package top.zackyoung.bbs.service;

import top.zackyoung.bbs.entity.*;

import java.util.List;

public interface UserService {
    int addUser(User user);
    User queryUserInformation(String username);
    // 判断登录
    User login(String username, String password);

    //查询用户信息
    User queryUser(String username);

    // 更新头像
    int updateAvatar(String avatarName, Integer id);

    //更新用户信息
    String updateUser(User user, String password, String oldPassword, String nikename, String allowUserDynamic);

    // 查询关注
    List<Focus> queryFocus(Integer id);

    // 获取粉丝数
    int queryFaceNum(Integer id, String username);

    // 删除关注列表
    int deleteFocus(Integer id);

    // 添加关注
    int insetFocus(Integer userId, String type, String username);

    // 登录日志条数
    int queryUserLoginLogCount(Integer id);

    // 登录日志
    List<Log> queryUserLoginLog(Integer id, Integer page, Integer count);

    // 加入收藏
    int insertKeep(Integer id, Integer type, Integer keep_object_id);

    // 是否收藏
    int queryAlreadyKeep(Integer id, Integer type, Integer keep_object_id);

    // 查询用户是否关注了该对象
    int queryIsFocus(Integer id, String type, String focusObjectId);

    // 点赞数
    int queryLikeCount(Integer userId, Integer type, Integer likeObjectId);

    // 点赞
    int insertLike(Integer userId, Integer type, Integer likeObjectId);

    List<Focus> queryFocusObject(Integer id, Integer page, Integer count, boolean total);
    List<Comment> queryMyComment(Integer id, Integer page, Integer count, boolean total);
    List<Comment> queryMyCommentReply(Integer id, Integer page, Integer count, boolean total);
    List<Like> queryMyLike(Integer id, Integer page, Integer count, boolean total);
    int deleteLike(Integer id, Integer userId);

}
